package jp.seraph.jsade.message;

import jp.seraph.jsade.effector.EffectorKind;

public class JapaneseMessage implements Message {
    /**
     *
     * @see jp.seraph.jsade.message.Message#alreadyRunning()
     */
    public String alreadyRunning() {
        return "停止中のみスタートできます";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#alreadyConnected()
     */
    public String alreadyConnected() {
        return "既に接続済みです";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#noChildNode()
     */
    public String noChildNode() {
        return "子の数が0個のノードを渡すことはできません。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#firstChildMustBeLeaf()
     */
    public String firstChildMustBeLeaf() {
        return "一つ目の子はleafで無いといけません。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#isNotNaoEffector(jp.seraph.jsade.effector.EffectorKind)
     */
    public String isNotNaoEffector(EffectorKind aKind) {
        return "EffectorKind : " + aKind + "  はNaoEffectorKindに定義されていません。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#isNotNaoEffector(java.lang.String)
     */
    public String isNotNaoEffector(String aName) {
        return "エフェクタ:" + aName + " は存在しません。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#argumentCountIsNotEven()
     */
    public String argumentCountIsNotEven() {
        return "引数の数は偶数でなければなりません";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#noJointFound(java.lang.String)
     */
    public String noJointFound(String aName) {
        return "Joint:" + aName + " は存在しません。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#oidIsNotNaoOid()
     */
    public String oidIsNotNaoOid() {
        return "このメソッドに渡されるIdentifierは、NaoObjectIdentifierである必要があります。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#jidIsNotNaoJid()
     */
    public String jidIsNotNaoJid() {
        return "このメソッドに渡されるIdentifierは、NaoJointIdentifierのインスタンスでなければなりません。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#unsupportedFPR(java.lang.String)
     */
    public String unsupportedFPR(String aName) {
        return "対応していないFRP(" + aName + ")を処理しようとしました。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#enumAssertMessage(java.lang.String)
     */
    public String enumAssertMessage(String aEnumName) {
        return "定義されていない" + aEnumName + "かプログラムのミスです。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#enumValueNotFound(java.lang.String,
     *      java.lang.String)
     */
    public String enumValueNotFound(String aEnumName, String aName) {
        return "名前が " + aName + " である" + aEnumName + "が見つかりませんでした。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#parseException()
     */
    public String parseException() {
        return "構文解析に失敗しました";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#lexException(char)
     */
    public String lexException(char aErrorChar) {
        return "字句解析に失敗しました。　予想されていない文字" + aErrorChar;
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#matchedEffectorNotFound(java.lang.String)
     */
    public String matchedEffectorNotFound(String aJointName) {
        return "Joint : " + aJointName + "　と対応するエフェクタ名が設定されていません。";
    }

    /**
     *
     * @see jp.seraph.jsade.message.Message#unsupportedPerceptor(java.lang.String)
     */
    public String unsupportedPerceptor(String aPerceptorName) {
        return "パーセプタ名 " + aPerceptorName + " であるパーセプタにこのユーティリティが対応していません。";
    }
}
